586
531
618
513
470
679
486
196
639
109
223
653
642
196
544
361
673
428
331
389
611
109
356
158
114
608
180
444
534
522
143
503
500
91
150
109
435
566
331
627
109
555
196
496
381
512
537
533
607
312
458
400
196
281
164
510
431
648
364
196
583
439
459
215
159
350
182
465
554
643
550
476
164
602
189
352
646
500
434
673
389
601
571
485
528
343
196
409
594
181
150
627
470
680
648
158
470
643
296
400
465
712
196
677
608
315
163
666
406
632
367
509
399
437
46
465
150
624
218
684
465
421
539
304
675
574
163
666
163
671
640
465
196
109
227
572
355
309
228
569
555
456
497
491
467
507
340
480
608
282
491
163
614
439
196
555
163
522
483
511
586
580
436
306
228
384
718
388
404
637
220
560
404
508
159
309
574
459
145
747
622
104
279
228
189
469
595
442
485
485
462
331
230
253
455
267
341
202
398
368
146
465
611
343
388
398
150
399
146
159
539
608
146
512
608
396
625
331
526
364
215
497
555
618
543
340
481
574
196
569
642
172
114
564
53
465
267
605
277
487
646
608
499
461
370
417
368
521
765
461
340
416
204
608
627
432
259
458
479
569
442
483
513
138
595
146
480
246
194
708
483
770
555
718
518
439
304
363
581
194
444
181
444
611
485
473
500
159
465
718
311
258
363
476
182
316
465
621
184
404
216
529
182
203
186
350
131
260
376
206
462
497
481
437
666
483
411
312
598
109
196
404
180
411
521
543
485
380
538
465
277
281
306
465
503
134
574
624
311
98
364
150
623
8
388
134
150
488
459
145
497
545
344
309
556
158
470
359
623
114
180
587
331
618
259
216
189
641
196
286
105
134
241
669
400
603
702
53
285
17
465
527
528
194
109
217
283
503
349
574
692
594
238
458
480
543
521
514
291
459
314
564
400
615
627
502
308
475
150
288
131
648
673
416
779
113
654
499
343
189
673
163
368
60
608
151
439
594
671
262
488
194
278
625
226
586
677
692
223
222
555
528
259
476
205
641
481
483
589
213
308
313
562
317
205
337
602
481
205
517
352
514
624
355
196
568
463
282
262
779
555
594
313
343
204
637
623
550
746
718
260
190
458
573
296
313
132
615
556
465
554
465
465
434
586
182
222
470
481
530
388
518
369
624
368
436
283
461
404
231
392
481
603
199
431
537
465
271
340
677
623
592
287
110
384
109
643
309
190
641
485
779
392
241
146
282
455
514
648
204
343
294
437
465
459
416
503
639
309
556
343
671
280
574
381
301
370
399
205
424
485
596
518
194
705
270
622
481
223
618
586
481
680
237
480
725
483
225
587
215
340
453
465
526
361
150
106
38
153
554
483
623
574
196
543
556
131
431
718
186
261
355
98
581
465
718
514
396
452
232
750
217
456
249
232
666
417
732
671
456
704
569
677
223
478
503
465
620
238
163
299
376
521
574
653
622
586
288
465
439
343
480
367
431
533
218
60
522
587
338
644
545
109
143
319
470
666
662
470
159
101
384
505
311
437
565
283
301
620
222
465
595
601
411
537
287
299
343
653
510
309
568
470
581
589
266
568
673
352
218
510
622
417
337
543
478
314
308
364
195
341
218
511
538
460
104
550
554
627
182
379
425
382
643
649
392
206
639
583
223
11
624
641
511
404
571
343
601
299
527
186
666
241
267
309
590
26
503
424
343
692
207
708
108
396
602
611
708
590
280
367
409
522
205
196
167
586
450
459
465
568
413
746
178
538
562
308
206
466
543
708
465
608
109
140
155
485
207
279
677
480
513
680
465
458
573
308
637
180
283
487
228
379
318
505
605
696
485
456
291
399
337
616
202
262
278
172
655
437
513
194
481
718
485
240
340
550
334
624
522
196
465
308
164
718
623
538
595
306
718
379
674
434
319
779
608
416
306
222
521
199
627
774
376
131
256
565
398
206
434
158
384
510
347
145
218
439
150
249
228
514
485
282
159
241
267
267
592
627
253
404
14
598
564
241
598
713
634
611
504
483
483
595
488
586
296
453
617
592
433
596
331
438
514
288
556
340
223
465
315
168
204
343
350
671
195
431
283
556
494
163
382
219
450
465
241
164
666
587
712
670
611
666
465
424
546
641
106
404
605
653
583
133
594
109
491
283
448
437
436
225
622
222
530
535
574
666
249
568
586
469
343
746
500
120
106
677
595
481
456
376
465
204
267
337
608
216
596
194
404
538
314
715
182
431
227
160
608
639
317
334
260
665
420
537
262
222
487
207
286
215
356
655
608
73
279
113
343
556
145
315
21
355
669
317
592
424
192
573
180
500
611
703
406
206
314
483
306
218
374
623
286
288
779
499
194
499
647
194
461
586
241
194
718
533
15
158
406
488
465
505
430
571
556
459
595
308
666
159
109
605
444
573
571
434
396
608
431
133
575
249
552
38
205
474
234
396
352
529
517
135
194
163
669
283
502
138
478
204
349
317
206
314
458
759
231
319
543
319
205
608
150
546
653
554
673
675
109
109
485
622
265
145
352
502
517
485
364
627
573
587
537
382
368
488
203
207
779
196
517
220
574
583
485
338
343
317
465
605
608
98
409
611
598
478
465
627
649
194
154
526
481
502
296
159
632
568
560
583
140
465
546
596
315
223
648
437
411
573
341
534
282
618
603
357
555
598
180
341
564
249
180
38
230
514
337
590
582
38
499
522
746
404
530
299
316
568
196
434
461
623
190
556
587
262
522
594
304
589
109
72
258
488
249
190
432
465
215
412
355
437
476
114
545
483
199
491
105
513
156
369
384
392
418
310
582
680
345
637
309
400
266
353
497
539
659
677
439
404
416
608
437
86
627
194
222
200
459
621
218
308
573
503
404
572
638
378
568
455
608
625
262
582
396
476
608
481
98
340
538
439
315
303
465
627
478
434
527
196
392
723
221
137
465
306
227
571
411
424
288
145
131
481
460
543
159
513
432
650
667
307
603
461
114
444
673
602
546
401
251
228
369
253
708
573
621
586
476
104
222
668
568
194
180
642
97
109
542
399
533
565
194
382
331
649
432
705
159
349
812
453
109
203
483
774
434
627
163
513
199
672
11
481
337
618
225
198
617
53
593
343
151
500
194
182
319
481
517
660
364
131
590
363
583
343
283
483
670
146
575
623
497
38
189
483
404
282
131
230
618
314
406
499
500
436
608
232
263
213
670
109
40
145
543
241
349
196
705
645
10
649
455
163
602
527
368
242
538
450
596
317
500
277
286
317
670
586
399
573
555
622
223
81
317
642
411
432
266
465
465
301
624
522
368
138
109
458
594
313
465
196
363
485
106
615
258
638
186
296
463
465
595
481
355
650
705
262
196
505
231
550
480
659
336
172
505
343
109
583
402
318
164
304
230
537
337
458
379
464
436
182
311
242
240
404
502
202
286
560
395
340
315
218
608
779
228
188
611
382
196
370
637
568
473
205
131
340
246
546
334
334
675
406
605
587
528
478
679
509
485
414
496
208
162
540
109
677
555
98
379
672
337
642
330
338
455
125
191
285
264
286
556
379
452
459
491
145
587
382
465
399
500
527
307
533
241
178
660
611
521
316
512
622
472
603
623
643
194
712
649
59
574
513
355
582
625
382
223
595
465
535
138
114
608
299
543
337
258
455
349
556
587
496
459
288
518
639
352
241
309
163
617
355
574
487
196
329
491
163
205
399
106
556
491
222
404
349
622
480
116
658
539
367
89
432
627
503
93
611
206
571
708
459
395
670
227
363
404
708
505
309
465
262
595
543
463
583
650
456
527
708
509
204
306
568
246
262
481
581
481
402
522
573
225
586
543
417
411
196
476
587
455
178
349
178
465
398
481
158
500
598
625
163
545
105
574
573
481
53
190
533
337
621
186
200
605
230
198
718
508
145
659
343
264
364
352
616
249
132
595
508
350
152
621
105
488
481
688
1
783
708
680
465
538
583
570
459
708
587
194
311
376
544
341
465
440
648
109
602
513
554
616
356
669
404
258
202
608
285
587
194
146
382
177
485
746
389
53
291
164
611
189
508
202
53
164
3
527
364
575
461
465
228
257
615
337
530
223
164
296
173
340
666
602
615
594
592
180
222
418
349
308
550
280
355
575
648
638
602
436
518
349
634
260
283
166
332
587
481
438
318
692
487
448
202
681
481
319
439
634
602
718
718
306
601
478
308
472
556
529
182
253
194
195
219
189
281
114
376
369
456
487
503
181
586
399
544
331
113
413
264
223
133
294
196
634
481
396
618
483
350
651
165
637
158
258
509
424
616
608
146
444
355
417
53
463
671
260
133
388
312
677
442
355
639
537
801
257
666
671
374
456
311
188
282
309
513
200
223
309
547
329
277
481
718
145
481
650
106
194
352
225
505
607
222
341
767
459
483
382
456
543
556
279
203
190
583
608
616
184
649
431
511
309
545
465
163
677
190
109
404
189
249
728
431
502
465
556
262
133
611
456
343
538
416
675
648
465
550
301
595
336
151
281
456
152
673
264
196
343
598
308
627
317
465
429
404
334
603
378
114
503
465
568
608
400
341
746
608
286
228
581
533
708
307
158
309
437
645
469
399
570
530
598
406
513
500
533
281
192
256
608
189
538
481
283
459
465
746
659
575
38
231
430
131
608
277
309
746
315
608
459
488
404
593
241
337
677
198
617
380
140
611
356
396
281
564
542
481
499
450
182
109
184
569
341
574
251
196
650
331
611
202
388
677
399
718
522
465
399
660
611
423
404
242
60
611
595
526
751
346
624
608
319
522
602
634
440
172
483
182
616
158
503
659
189
673
437
432
334
225
196
177
241
666
650
705
573
456
642
134
98
485
517
218
465
180
614
439
774
473
283
509
695
605
671
615
625
456
146
444
685
555
258
568
109
502
746
336
232
423
634
207
499
398
509
256
485
439
437
168
481
497
465
468
313
234
512
680
131
582
417
650
572
718
116
463
505
555
198
474
637
608
352
299
145
222
138
465
314
294
458
199
513
638
309
399
500
200
649
230
543
150
807
465
618
337
398
181
544
565
439
485
200
620
665
409
109
230
608
439
476
708
669
574
142
601
417
478
502
522
573
453
627
666
189
150
526
648
456
186
590
497
131
615
181
414
582
602
182
481
180
131
340
465
469
587
361
481
53
196
317
463
379
554
642
465
465
615
400
180
671
384
180
505
150
611
413
481
555
517
601
608
545
436
477
186
483
808
259
483
240
465
560
282
571
311
336
253
533
398
607
573
312
361
556
388
283
307
364
718
105
634
746
310
574
527
556
315
594
502
439
465
671
627
375
537
646
583
705
196
675
409
535
140
202
159
440
163
196
465
308
296
222
299
583
646
459
482
500
641
555
746
481
485
525
311
404
529
109
164
104
104
570
458
38
241
326
316
392
392
624
313
199
104
697
375
379
458
181
648
439
491
416
584
373
431
411
314
375
511
277
611
487
508
618
317
627
379
207
135
608
679
364
746
282
608
445
259
196
712
114
465
163
150
343
481
182
622
641
648
180
434
230
172
621
708
223
529
196
88
543
573
282
163
661
145
649
241
406
517
608
145
746
564
670
627
614
481
395
502
158
338
189
158
581
402
529
187
318
334
336
658
95
383
225
134
393
708
491
301
294
184
231
643
9
145
598
199
666
376
202
525
432
608
337
611
145
312
481
340
349
256
569
196
649
62
690
131
526
311
363
416
350
474
595
317
502
514
654
392
109
337
376
583
499
242
398
398
150
315
223
376
104
143
146
514
190
575
485
181
319
204
180
403
574
497
499
522
241
634
194
241
241
436
637
222
535
556
642
352
634
500
195
399
433
417
382
434
114
648
194
411
705
396
288
704
257
196
388
163
514
461
485
465
722
341
645
331
643
151
319
481
150
519
264
603
679
662
368
521
712
595
465
594
608
746
571
544
500
262
380
164
646
425
580
440
512
363
9
222
563
225
132
202
150
627
673
109
487
312
465
485
546
411
298
375
417
396
465
611
666
459
223
590
456
417
705
70
615
319
131
230
583
465
194
231
186
757
634
145
150
595
279
571
583
355
140
608
282
463
109
558
222
554
509
329
671
574
478
481
262
660
545
394
352
439
481
398
538
309
573
253
539
262
461
608
669
538
309
138
411
485
313
230
286
671
664
512
543
420
455
109
775
756
384
509
568
172
319
343
556
104
205
550
404
569
586
456
555
116
562
196
104
718
352
283
371
665
171
383
281
288
222
290
573
665
434
407
143
134
31
352
279
411
331
671
481
662
389
568
132
370
465
646
718
593
311
430
368
241
219
677
228
194
666
380
163
223
627
527
549
106
225
151
465
571
404
182
181
340
318
318
416
392
404
104
231
501
500
608
306
436
313
331
406
527
193
551
452
593
364
465
731
150
241
432
375
288
388
215
499
517
430
537
280
223
675
105
483
204
286
583
104
605
608
217
133
336
440
595
444
483
611
343
380
543
514
478
409
314
587
601
595
315
196
405
615
569
517
337
733
227
522
36
417
159
437
608
539
465
271
60
136
262
288
528
135
184
627
456
200
568
586
544
334
474
472
363
439
251
574
587
664
253
172
565
465
203
718
465
608
379
317
264
282
637
664
481
794
483
199
444
301
573
608
528
608
634
481
150
587
334
533
392
481
376
215
338
375
497
400
560
363
400
431
194
230
660
106
361
598
196
623
334
587
590
510
145
478
513
465
735
513
334
514
282
465
574
163
673
319
670
343
622
478
109
481
109
364
551
311
502
570
646
440
465
513
648
315
660
582
649
460
343
301
296
623
172
378
378
623
499
464
791
361
571
537
505
526
543
662
225
586
526
465
459
308
109
238
615
424
439
611
171
135
105
646
338
655
182
313
380
648
638
556
168
496
241
329
294
180
556
483
349
114
553
570
544
465
337
555
207
218
288
439
400
316
518
283
601
465
436
620
608
648
337
150
670
400
436
404
383
649
309
288
184
164
200
514
163
212
369
380
465
543
334
361
774
352
277
109
189
649
337
503
463
465
476
459
400
222
399
521
448
246
774
376
376
143
637
321
340
669
364
172
590
608
131
465
521
307
428
135
134
465
370
665
159
660
150
785
689
230
368
433
306
535
666
12
712
522
481
192
205
392
718
620
459
399
186
514
417
575
673
500
509
502
74
114
320
594
225
222
447
411
545
264
227
399
436
38
502
541
596
465
113
564
461
611
196
291
172
481
159
109
133
513
608
262
53
569
135
368
668
625
319
425
448
182
445
640
574
511
38
241
574
509
116
119
286
225
762
262
483
316
35
456
646
196
266
319
168
282
664
556
135
314
222
315
634
708
436
399
24
114
458
459
465
621
587
642
384
159
483
465
337
392
642
718
458
598
363
583
659
575
196
312
106
605
587
361
662
543
143
317
523
502
205
465
528
596
195
356
98
388
241
286
306
604
291
679
476
343
404
595
436
459
258
465
113
623
222
590
204
608
596
318
196
380
634
150
704
555
774
343
414
309
575
400
416
150
152
301
262
595
481
539
677
378
573
384
258
230
608
104
513
215
538
189
53
306
472
639
164
569
738
642
570
114
196
433
465
232
189
543
294
392
586
406
712
299
705
671
150
658
299
465
282
196
587
677
605
337
306
380
331
539
465
319
746
718
708
398
659
746
434
705
483
352
202
481
480
158
184
673
588
669
109
38
519
204
655
178
587
319
554
485
368
590
361
562
505
281
205
380
485
199
163
220
601
342
509
645
299
191
54
521
510
145
253
400
415
215
114
129
518
616
125
207
718
424
296
458
483
467
453
223
404
301
465
604
337
458
402
60
331
196
394
568
467
774
246
497
158
355
53
456
260
150
608
465
669
116
159
423
611
186
350
556
522
565
608
432
519
502
398
680
138
434
383
467
470
145
181
463
583
145
262
288
444
527
228
513
481
675
487
368
518
607
522
592
602
205
258
109
514
285
231
514
465
531
264
418
282
225
109
465
568
669
223
522
705
465
620
453
196
355
615
527
605
506
461
718
458
543
594
465
392
202
264
440
637
288
140
545
642
705
618
595
490
582
673
222
204
281
286
58
616
316
397
705
465
500
187
601
337
187
594
363
712
543
341
172
623
570
455
639
607
573
586
296
337
455
167
582
623
459
180
491
543
608
635
502
478
273
595
414
460
196
627
543
375
194
458
511
503
598
350
745
776
364
311
533
135
660
286
133
195
380
488
509
182
132
500
361
608
480
164
717
109
32
555
256
565
437
587
509
355
608
182
388
314
514
664
568
598
565
532
361
381
692
413
5
380
641
746
481
575
340
404
195
329
570
398
746
134
627
260
256
530
623
465
465
262
332
423
196
279
746
196
380
556
476
456
343
509
196
587
168
705
398
6
518
481
190
282
570
286
692
556
158
150
194
196
314
361
370
223
317
483
465
217
481
556
463
562
252
181
202
182
202
483
583
627
565
590
583
624
488
583
625
500
222
465
57
410
301
396
319
186
202
109
502
448
196
499
545
774
264
163
617
9
363
491
381
145
713
416
439
460
196
341
106
569
404
355
455
281
241
240
218
677
280
586
530
718
637
455
309
608
400
456
621
595
499
131
104
483
286
207
75
196
660
238
672
455
526
336
461
500
399
199
708
634
411
222
774
556
106
399
382
616
679
621
340
318
146
509
231
140
138
448
669
240
422
708
675
159
202
218
172
286
131
223
378
718
465
279
60
774
404
150
199
222
232
319
230
222
596
378
595
493
119
242
605
491
550
180
364
299
561
649
306
430
581
291
666
436
798
598
307
400
465
418
202
463
406
517
104
608
603
454
570
196
500
181
570
465
587
241
513
454
159
485
382
587
288
201
262
440
545
508
336
455
590
236
180
175
253
502
182
456
406
349
514
586
568
654
465
602
608
309
677
402
580
465
666
307
140
341
283
431
396
177
450
38
140
569
172
669
514
196
205
109
614
395
416
434
774
38
98
469
603
19
483
481
664
308
527
562
126
616
665
569
439
106
518
574
377
267
180
363
668
398
241
145
637
151
389
406
603
432
485
555
355
343
369
113
304
196
648
474
163
182
533
301
438
199
394
79
565
497
465
439
135
575
316
232
459
503
514
465
514
502
98
502
204
207
611
601
234
628
404
643
526
334
726
465
231
718
715
641
692
152
505
109
308
363
529
123
442
232
368
465
574
481
11
152
470
609
116
207
581
545
543
659
331
164
361
465
217
106
150
562
596
570
259
301
375
218
232
416
571
283
608
592
134
590
180
187
135
476
673
603
581
180
632
587
470
586
172
608
384
617
627
458
448
458
692
404
485
608
178
476
587
634
499
285
177
671
608
150
444
465
98
539
398
398
617
343
194
554
734
340
206
373
575
675
417
400
465
313
283
194
458
9
350
595
341
328
491
499
459
281
527
313
624
505
279
483
301
283
281
317
529
611
418
513
264
253
505
363
217
589
432
805
194
427
544
595
124
211
279
465
222
500
564
539
729
319
718
623
521
465
646
583
424
306
196
436
262
505
278
317
705
573
448
286
460
202
483
313
258
510
411
551
416
481
283
182
400
659
199
364
746
488
199
666
480
662
680
445
784
465
200
139
481
677
602
544
205
331
578
196
779
677
137
465
670
562
618
264
309
502
428
118
159
315
343
587
556
283
392
664
633
404
474
593
180
119
522
665
556
355
151
662
658
491
202
307
616
199
131
605
336
264
700
637
392
483
149
595
186
337
317
151
306
511
461
361
315
308
560
442
182
227
522
517
343
640
514
677
163
625
350
307
66
164
465
556
218
4
659
339
503
398
182
241
543
241
191
603
380
583
399
134
396
195
611
106
400
556
159
533
413
409
242
228
440
146
368
583
169
522
256
465
150
412
196
542
583
608
461
654
643
307
145
145
311
433
485
337
434
295
481
611
653
581
514
659
383
238
640
307
114
461
539
196
452
376
595
146
526
181
590
608
538
661
537
341
158
379
187
291
465
264
264
262
627
204
666
231
406
184
590
264
614
573
143
238
573
643
432
194
671
602
172
377
608
522
449
498
181
184
312
624
488
317
299
692
615
163
653
543
336
210
638
615
509
603
715
138
595
481
512
185
538
286
352
556
459
189
530
164
569
533
299
207
202
664
356
262
692
522
352
608
514
89
424
718
289
608
465
167
186
159
348
481
106
708
38
206
623
608
399
601
158
705
104
605
481
692
164
193
216
645
194
194
202
196
646
712
217
225
659
361
146
430
381
228
514
573
181
288
38
639
527
478
280
416
411
518
459
163
458
298
404
106
521
416
603
514
426
281
586
319
640
104
262
38
180
570
442
623
779
414
574
779
568
314
222
581
465
283
377
670
379
560
527
150
404
182
133
379
60
459
114
434
234
337
308
618
562
314
458
173
379
436
253
592
264
200
481
659
675
389
503
417
641
611
637
783
595
637
465
349
481
145
511
465
340
666
311
572
380
172
157
340
181
465
483
380
196
499
150
311
205
598
279
543
500
398
306
20
632
562
340
150
568
122
338
396
135
665
548
575
537
394
38
398
222
567
364
568
554
404
234
399
746
210
640
476
713
205
574
555
651
180
343
216
623
491
488
555
190
426
474
637
150
604
194
404
465
483
581
587
601
388
191
222
517
109
225
491
455
603
779
465
114
564
557
182
568
474
218
179
180
384
399
598
205
225
199
590
453
398
473
188
598
500
632
114
341
627
514
109
225
806
708
718
713
481
537
465
458
465
317
369
316
465
645
590
331
605
533
133
465
539
379
549
399
311
708
595
361
592
217
485
164
637
437
596
242
779
196
336
448
605
196
218
198
651
491
568
198
283
643
645
599
564
659
145
467
637
472
104
573
340
205
763
488
718
571
196
485
509
465
364
241
131
150
340
341
649
746
539
526
343
163
608
132
522
381
473
533
182
601
116
313
196
156
417
150
779
158
705
595
225
375
132
594
608
803
194
114
565
178
627
400
427
680
251
538
138
605
481
381
634
470
718
517
565
669
522
669
380
774
590
555
480
423
573
113
680
317
480
645
418
718
180
314
103
624
334
379
424
554
575
637
595
231
595
611
306
180
481
530
368
262
434
666
217
230
705
527
98
437
367
382
608
180
150
230
642
438
564
180
571
779
533
343
13
199
686
284
361
404
518
181
254
526
708
196
646
575
395
522
465
338
189
551
624
514
461
262
592
222
420
517
465
218
182
571
436
172
573
458
241
608
186
379
286
222
538
76
465
545
590
196
608
109
133
671
569
459
319
202
331
485
569
590
199
634
232
205
196
637
621
146
146
184
258
480
352
514
608
511
500
145
500
582
279
602
134
437
291
595
27
632
341
230
669
590
338
137
483
491
575
592
513
659
611
430
259
573
291
560
742
658
565
538
481
163
480
150
624
146
554
319
480
306
306
109
570
180
570
71
748
392
562
186
571
369
465
721
495
488
225
98
574
309
379
481
158
411
627
593
311
227
485
713
632
317
672
404
252
779
306
311
314
334
313
595
442
527
555
437
296
618
380
319
90
400
133
417
355
605
349
114
448
598
718
370
481
649
485
312
474
311
481
458
539
715
311
283
465
341
556
448
793
593
535
350
205
527
281
396
581
163
380
646
307
509
459
708
461
708
109
496
158
664
196
535
514
518
231
271
677
673
631
708
491
530
668
539
570
217
406
623
573
568
574
113
476
465
61
665
131
334
109
196
202
329
514
206
230
369
114
708
315
608
369
660
620
63
461
586
400
396
488
396
595
622
314
595
190
34
311
225
206
164
186
497
485
225
465
206
590
195
435
406
662
228
639
163
135
513
220
648
485
779
432
586
458
225
104
615
132
705
543
230
574
264
499
538
481
608
311
167
465
98
568
623
370
195
134
363
109
708
324
595
363
692
637
307
150
573
382
361
78
554
705
718
565
158
228
562
643
56
499
431
98
659
317
502
196
718
595
508
306
363
708
393
315
204
377
608
406
317
581
382
109
712
163
196
196
481
491
350
708
575
595
715
230
439
80
465
434
374
527
556
648
505
379
282
218
530
246
361
194
182
718
704
163
465
225
616
483
283
639
432
470
352
246
379
535
132
368
308
622
594
246
590
590
84
500
465
209
338
313
605
223
260
592
669
621
511
779
106
692
355
164
485
109
277
145
191
512
283
315
514
444
669
595
89
595
194
218
645
592
436
431
656
398
476
704
178
195
181
182
313
203
535
251
315
164
228
222
369
476
343
164
274
288
551
627
474
151
583
608
779
675
510
537
308
718
352
608
705
167
605
637
158
452
223
708
505
104
301
164
249
116
43
138
398
215
545
551
182
571
222
608
309
637
543
583
114
622
304
658
627
432
659
109
499
543
502
259
587
258
432
612
522
448
657
740
431
200
677
163
502
568
453
595
622
608
527
361
329
617
555
483
640
465
145
316
114
603
382
199
341
406
416
595
309
485
595
546
648
416
718
154
611
150
281
440
461
183
746
241
47
590
481
205
639
196
304
172
560
583
539
260
246
230
718
182
222
627
593
283
109
304
616
638
281
306
388
456
485
616
646
311
180
456
244
200
500
376
114
648
109
138
659
204
143
673
574
538
465
398
133
198
206
586
623
458
481
399
196
225
575
231
189
500
650
311
146
125
555
789
343
140
583
164
469
439
417
442
522
680
146
465
568
319
396
199
195
388
145
465
105
718
488
194
172
465
182
363
571
537
593
640
196
537
556
195
406
396
718
151
130
437
623
172
177
562
627
598
518
419
444
355
480
163
666
28
396
568
455
568
465
417
22
556
459
608
568
113
658
478
380
587
593
442
708
234
485
319
380
577
569
311
517
639
219
364
705
625
194
706
530
465
465
418
150
503
487
375
519
363
648
570
337
109
556
509
337
458
505
196
531
311
528
574
465
680
539
414
568
730
418
545
140
535
380
710
671
206
196
384
499
459
218
539
465
648
481
271
230
680
560
650
744
338
627
465
465
267
618
163
312
470
461
503
595
481
514
660
623
453
313
632
135
135
637
109
465
274
627
508
285
436
481
465
583
174
363
135
218
662
204
666
600
337
222
199
196
453
595
245
465
526
539
508
355
573
207
152
671
659
517
592
445
465
705
399
718
670
608
441
618
556
283
450
608
654
502
270
556
460
573
181
608
539
331
314
513
456
568
680
317
608
186
465
53
279
194
109
337
592
172
537
398
306
648
766
394
102
315
313
109
233
643
395
502
343
608
488
418
437
645
436
512
296
583
463
151
621
616
590
568
643
277
222
314
204
349
311
392
332
746
280
639
164
556
316
465
573
652
595
406
340
383
199
158
465
623
365
202
316
574
444
586
396
595
718
213
502
608
515
527
474
440
543
291
317
338
463
542
465
473
340
586
603
191
312
222
316
138
341
125
530
539
514
196
134
779
425
705
583
455
595
196
500
135
592
392
485
370
285
508
129
640
465
692
180
461
299
483
485
114
673
277
432
518
465
491
368
595
646
413
305
204
145
268
255
404
190
608
258
355
590
718
505
616
319
396
398
7
458
459
163
596
264
500
135
627
480
615
483
539
277
433
192
611
607
309
147
412
673
382
258
555
316
306
614
595
262
465
376
491
481
400
491
465
465
637
646
283
281
424
481
109
163
518
53
114
186
497
608
677
291
68
150
172
352
150
502
594
602
400
272
625
363
315
598
282
279
659
311
143
648
779
465
465
313
262
241
158
352
564
623
398
288
562
574
774
145
430
659
283
158
283
253
223
309
225
307
210
145
574
48
145
204
260
779
380
573
262
259
560
500
508
483
180
196
512
190
641
459
242
555
388
671
469
575
546
341
116
621
267
659
384
440
465
190
311
465
355
624
277
308
676
465
133
114
573
132
99
621
411
708
465
352
279
199
189
106
787
64
568
499
319
522
616
583
195
602
368
555
196
568
461
718
465
180
554
418
618
109
312
223
400
205
774
593
194
307
319
459
783
281
171
512
210
60
424
500
627
708
605
499
627
611
398
350
213
180
184
598
708
586
526
297
152
488
383
275
582
114
618
411
556
163
641
416
343
660
230
459
512
465
182
379
779
580
651
465
556
231
488
677
292
352
594
660
518
159
311
433
575
69
568
587
608
104
531
692
625
196
746
288
432
739
569
196
608
430
622
590
172
306
568
718
608
489
277
437
205
499
308
790
500
269
608
607
432
637
529
601
135
77
526
113
299
229
390
648
666
646
331
358
593
355
643
184
544
465
608
456
259
431
376
277
583
456
138
620
434
392
624
283
228
671
271
764
519
406
215
340
202
564
590
159
569
394
448
205
125
707
439
736
182
281
113
474
573
206
645
637
509
574
437
246
258
315
623
451
627
190
340
668
109
627
522
294
574
533
288
503
432
556
418
246
140
281
497
182
587
198
146
573
413
207
627
181
380
442
659
309
465
708
299
135
249
291
182
660
399
379
363
355
554
570
150
317
666
200
180
502
340
662
361
463
587
375
271
580
178
514
158
718
556
608
509
658
182
659
465
574
634
573
509
455
465
627
638
178
439
543
715
187
465
398
459
543
634
664
475
641
592
172
458
590
472
205
350
743
608
177
491
279
568
459
222
586
53
552
277
109
222
432
131
307
616
200
485
643
187
41
228
417
708
412
159
146
283
514
163
543
593
581
311
513
587
456
555
225
437
675
294
384
341
182
138
363
797
534
319
715
311
296
481
487
287
382
483
594
505
196
134
643
392
712
668
376
343
535
586
60
195
634
337
114
485
627
194
634
104
718
352
349
436
622
556
459
316
456
388
590
590
604
543
481
241
453
319
483
439
319
152
437
340
570
542
608
546
109
379
642
509
622
544
125
485
340
288
351
435
59
456
382
343
340
109
128
435
455
560
452
546
648
299
665
109
571
340
715
194
508
491
637
718
491
718
569
435
573
571
510
310
286
432
487
223
456
526
196
380
669
392
188
533
677
258
241
718
459
259
418
114
148
570
595
660
485
592
184
460
513
414
502
196
554
315
582
465
172
246
483
614
556
404
718
224
528
404
719
543
718
632
276
163
519
640
163
364
172
98
665
623
505
406
465
196
594
639
150
476
649
282
175
331
182
316
114
146
142
481
202
499
396
530
574
104
294
465
125
145
627
465
670
180
458
212
341
189
469
503
434
458
378
718
260
598
607
424
406
317
583
601
222
666
481
182
778
521
150
485
481
720
418
106
522
11
185
607
119
624
238
574
530
296
538
677
514
341
301
200
437
544
409
234
223
608
195
352
288
163
341
191
315
364
364
436
413
471
459
196
518
622
222
349
199
611
199
465
38
340
460
67
293
204
191
483
241
574
564
228
640
460
596
483
571
232
627
611
556
522
601
190
267
623
463
109
514
388
437
199
355
432
513
317
392
398
573
500
417
287
692
437
549
394
398
259
613
575
145
660
594
158
109
650
591
708
641
338
531
488
611
715
481
677
648
542
343
281
543
181
621
413
246
241
666
297
217
555
634
467
277
659
624
623
528
194
811
434
369
666
181
575
544
196
106
481
286
172
355
648
145
499
529
317
481
277
109
372
444
611
361
150
456
222
440
291
582
598
231
384
607
459
623
182
150
315
337
545
546
167
640
145
624
465
186
266
570
319
503
622
317
595
199
587
476
774
539
228
152
537
423
708
555
416
307
172
361
340
601
241
554
459
331
545
85
157
705
225
594
804
150
196
601
639
708
554
573
53
377
605
624
649
361
180
259
677
779
594
294
291
594
500
114
349
381
132
223
138
222
150
483
230
761
483
485
460
395
499
338
338
392
465
705
583
241
237
352
595
456
331
512
341
625
708
152
309
207
627
382
718
438
573
350
774
474
282
331
382
524
375
481
369
388
618
150
431
709
669
551
105
626
277
186
424
659
184
311
611
455
113
480
649
135
191
481
109
643
355
370
645
481
282
718
662
705
499
283
189
204
361
146
196
618
109
622
587
111
262
554
749
180
315
195
573
439
530
364
535
499
286
620
565
550
182
598
461
670
459
417
464
473
343
570
131
309
677
539
646
215
315
384
598
113
485
151
313
650
313
496
104
152
331
627
483
677
705
666
779
539
522
679
308
291
195
349
741
133
491
513
611
315
340
434
641
483
481
116
104
608
316
465
465
314
375
196
465
502
627
614
508
513
539
114
527
442
106
302
434
587
216
355
565
554
104
556
311
388
230
627
406
502
186
608
164
222
792
607
361
315
316
465
361
604
623
363
225
582
499
218
485
182
459
164
598
364
510
533
264
662
411
627
319
469
418
616
315
569
605
114
436
570
181
60
491
204
181
476
241
704
376
435
282
145
624
319
145
301
705
469
392
204
195
259
188
150
400
418
186
463
194
383
218
645
611
192
544
253
109
388
774
500
440
555
396
316
181
481
286
145
98
337
624
285
349
417
189
135
675
499
381
459
481
334
436
253
113
485
608
575
416
352
340
241
519
616
677
256
746
461
544
55
569
539
194
698
502
511
314
618
163
316
485
241
485
304
109
150
164
307
280
264
560
217
456
718
337
481
205
465
423
315
653
538
425
571
246
282
718
522
350
218
559
437
186
527
349
575
392
398
574
564
539
404
152
601
556
202
161
337
225
543
611
163
215
187
287
704
341
309
225
29
205
378
143
257
163
587
474
417
379
434
227
282
277
672
262
311
485
639
465
145
181
171
469
150
586
503
291
465
280
258
213
286
483
334
571
366
659
196
712
411
615
718
476
404
469
418
288
543
288
502
527
502
106
459
535
145
167
439
530
267
150
594
145
152
634
642
205
382
641
503
355
257
514
163
134
659
618
384
281
455
583
191
648
150
361
502
131
607
230
643
779
277
235
539
246
389
615
404
641
117
637
308
315
543
483
424
549
288
456
184
317
259
378
718
673
282
436
227
392
194
465
109
343
480
39
199
369
581
106
481
668
502
399
568
442
448
655
240
624
199
145
549
343
98
701
779
754
532
678
377
317
231
483
618
115
481
608
456
439
196
271
565
802
400
180
439
560
666
595
552
151
285
439
392
595
262
108
779
718
788
499
514
196
669
425
476
404
246
594
465
465
432
223
575
443
253
618
508
232
527
481
190
518
25
465
196
195
340
442
382
642
715
283
509
109
562
605
266
379
708
436
225
135
459
150
440
206
199
666
469
530
400
181
677
456
675
246
225
481
437
394
544
712
416
629
352
583
660
500
182
340
708
648
249
238
573
379
418
157
618
641
150
186
590
553
618
319
463
313
23
608
643
560
325
537
259
560
283
669
355
194
680
215
677
465
649
645
361
513
98
590
518
648
679
439
307
211
340
194
132
109
399
380
315
708
555
205
481
202
631
222
555
465
592
488
399
594
456
605
583
499
637
380
377
810
379
196
623
404
299
503
469
35
531
194
514
281
783
623
465
258
587
483
392
573
809
301
331
481
308
140
181
537
622
664
666
621
659
555
544
594
194
461
187
116
439
167
673
434
434
301
400
456
340
485
715
190
398
465
673
465
481
312
343
655
625
311
655
624
150
718
595
544
465
587
564
538
646
436
182
380
488
83
485
568
273
223
491
134
608
417
89
413
514
502
317
570
109
307
595
565
196
755
490
621
436
404
618
196
150
316
608
182
116
476
595
306
417
199
555
480
399
627
361
150
526
399
199
530
675
352
423
189
195
595
384
469
618
608
114
225
203
621
199
518
308
511
514
256
256
476
206
516
196
180
704
535
205
661
352
465
440
601
116
337
150
774
623
277
565
222
223
114
314
526
315
134
624
51
671
308
150
530
196
316
461
648
182
473
496
593
625
510
573
259
217
431
151
341
487
463
335
316
503
134
132
349
465
334
437
249
458
459
311
194
645
646
481
465
625
242
556
666
465
648
196
223
195
231
423
194
568
206
315
406
666
311
543
138
601
535
543
456
771
352
308
595
518
601
199
304
53
624
444
677
452
470
196
673
500
568
496
106
587
440
437
522
306
380
465
603
592
556
184
637
587
222
481
204
202
465
116
431
238
587
98
60
191
134
182
279
646
659
607
727
598
581
680
340
33
232
608
119
669
340
637
362
438
528
470
205
518
514
533
602
437
340
241
465
654
417
98
573
590
575
485
114
315
199
343
643
620
398
322
546
435
646
189
218
406
277
594
134
664
503
375
467
781
437
603
337
133
398
465
341
509
165
718
379
444
481
679
627
699
481
608
758
150
163
231
327
159
611
341
499
146
654
98
388
488
608
746
452
231
408
195
114
583
311
314
188
669
337
379
392
202
131
637
135
433
222
194
213
715
621
341
107
509
400
505
569
317
518
608
526
311
582
575
692
404
402
670
170
380
132
673
470
556
465
432
480
396
646
240
671
603
615
145
168
109
450
666
459
109
455
636
341
163
105
499
203
712
350
307
573
708
704
483
625
437
145
624
281
231
241
556
616
586
543
481
311
671
256
560
568
542
796
189
474
98
253
459
643
113
442
197
222
602
398
437
150
623
431
669
439
436
620
194
440
574
460
283
313
129
671
213
680
299
311
487
132
470
708
604
223
440
227
238
241
618
646
288
608
242
87
340
307
189
705
296
314
485
409
384
199
545
228
311
465
181
163
299
331
432
315
587
499
350
417
718
204
286
480
476
53
182
481
511
465
133
196
223
485
379
555
396
511
580
465
329
772
601
458
404
204
583
318
675
238
299
258
662
432
705
596
669
485
623
281
423
257
199
660
145
580
370
705
718
452
470
146
177
711
555
240
565
680
548
283
458
104
38
680
363
692
384
639
605
660
465
361
618
503
680
609
376
539
266
379
53
350
574
53
253
100
194
634
465
228
434
194
343
42
555
437
196
496
476
614
533
38
338
526
488
458
459
315
389
281
571
473
127
553
150
287
616
199
204
555
649
404
663
509
508
143
649
234
363
251
679
774
533
104
207
222
436
264
172
231
536
623
281
549
465
220
618
592
481
315
543
459
207
431
587
196
627
666
186
246
352
267
639
411
570
605
280
521
133
605
113
795
383
640
237
680
779
679
341
343
109
673
666
363
624
527
465
196
746
718
639
568
223
659
363
222
574
258
258
598
453
634
649
503
352
398
491
587
587
713
341
411
134
352
216
474
571
395
483
712
509
596
434
150
104
648
718
485
240
109
334
608
416
334
530
212
258
572
705
230
200
500
643
485
661
257
465
311
388
481
98
384
230
694
222
338
713
459
262
589
206
286
260
568
343
378
708
432
159
404
349
343
277
485
465
396
341
338
634
337
435
230
363
131
163
264
533
483
140
299
554
708
163
514
555
383
163
182
483
352
400
246
181
189
481
499
315
150
476
250
782
564
465
186
92
670
564
231
618
400
465
334
132
708
746
196
355
228
522
189
109
508
350
596
746
196
159
619
662
463
645
188
182
205
98
434
465
132
150
483
106
458
458
194
349
642
623
402
623
611
222
164
283
172
398
377
646
587
587
434
605
196
460
158
605
585
150
456
659
341
717
287
319
616
145
463
98
671
561
556
440
625
316
666
483
182
242
492
382
481
440
502
530
543
668
774
603
568
624
242
639
135
465
465
376
623
651
205
296
189
104
2
513
508
109
648
158
483
313
135
360
282
465
439
309
368
608
465
458
109
544
355
539
223
543
241
150
189
514
522
37
653
106
461
465
150
640
306
178
668
214
594
583
659
677
384
544
718
666
375
164
114
384
538
565
560
319
432
499
205
216
281
669
385
519
505
309
680
461
204
436
718
388
306
440
605
666
624
487
799
352
508
452
666
662
634
140
592
196
575
746
361
560
286
223
246
708
560
281
505
182
565
680
625
485
414
556
713
680
616
760
485
605
780
715
311
671
611
384
398
189
382
232
188
537
714
195
380
641
218
470
343
200
352
627
311
206
296
340
253
605
283
432
543
416
680
395
444
500
105
569
643
184
311
314
286
311
314
105
646
291
16
232
196
659
352
538
545
104
573
435
472
134
196
472
317
436
608
121
608
677
291
202
65
669
624
437
417
669
186
608
411
194
627
234
249
402
352
774
89
109
223
574
574
485
473
194
336
253
312
398
569
618
243
546
436
499
388
336
481
544
466
202
223
448
500
143
677
662
400
480
249
659
279
279
779
554
340
363
529
666
145
159
459
304
465
645
608
163
500
157
218
417
544
481
145
658
281
603
542
502
439
150
49
361
671
151
444
459
502
279
459
502
618
184
317
412
285
391
203
312
306
560
380
440
465
249
583
444
679
420
146
315
691
481
618
182
737
308
152
109
230
388
583
172
473
708
340
363
412
568
435
461
586
152
196
440
384
543
572
241
240
779
231
343
502
380
608
459
277
521
675
568
675
543
184
383
529
500
428
444
565
499
158
109
574
282
669
513
463
343
481
538
435
680
651
485
481
296
465
774
595
319
340
452
637
502
137
682
500
485
542
133
627
594
594
718
186
708
138
705
316
575
594
430
465
314
89
378
343
150
262
375
565
555
135
465
476
614
677
311
653
291
172
692
602
109
196
497
38
108
621
311
262
361
485
150
413
692
531
207
708
207
182
283
194
608
476
399
291
432
461
608
258
423
480
380
533
349
753
312
456
107
488
437
434
539
205
334
186
294
337
786
53
291
159
502
400
313
542
196
205
555
483
309
513
673
608
522
312
286
312
568
444
521
199
465
718
296
277
483
230
18
311
571
364
514
435
539
283
134
104
524
317
527
484
587
167
485
752
463
158
555
642
444
364
318
465
184
746
595
673
623
416
718
503
533
297
611
465
661
662
98
615
598
658
435
592
705
539
527
624
503
238
225
109
627
146
660
439
189
379
331
605
659
157
646
315
50
189
114
746
634
605
465
228
463
500
715
568
258
374
546
256
587
444
461
331
478
396
248
470
565
554
478
432
317
679
627
509
398
595
649
341
687
670
769
355
603
180
465
383
485
337
675
382
485
669
481
659
436
586
556
304
623
680
348
543
587
593
329
565
291
376
601
181
104
388
202
529
186
666
639
627
317
439
481
411
105
465
573
400
205
230
114
537
239
375
189
258
491
483
538
223
435
774
338
331
768
400
253
637
653
306
172
377
206
519
539
223
114
204
623
433
535
662
545
380
465
182
281
369
199
480
608
526
262
458
309
434
158
465
470
316
285
422
458
232
554
671
431
649
424
395
544
618
669
551
649
476
186
624
133
465
182
660
158
673
196
333
500
159
228
571
640
422
639
308
341
331
465
307
384
184
444
196
483
218
621
539
659
444
396
307
514
470
316
436
337
234
491
294
368
673
485
396
439
679
704
669
309
649
481
587
556
601
150
196
654
352
653
573
135
587
253
378
456
568
718
637
527
481
465
288
309
337
458
400
259
476
381
779
539
354
222
138
662
306
543
574
587
587
256
315
257
465
207
465
181
481
382
608
182
225
231
296
231
404
379
257
231
508
476
143
565
500
587
465
343
624
527
517
582
38
298
218
573
145
502
465
259
227
361
196
627
223
352
606
642
618
230
673
543
575
556
615
172
704
404
554
241
105
537
488
665
677
340
404
777
648
194
194
448
437
465
618
109
505
528
564
568
198
718
779
196
460
439
553
143
172
650
746
280
465
503
176
416
675
215
387
222
481
343
352
621
389
610
196
645
724
457
225
203
223
414
718
299
562
620
337
666
594
618
277
662
465
247
218
659
349
200
343
306
271
587
556
774
459
621
597
746
133
544
38
568
341
502
500
565
497
223
384
575
594
317
279
30
502
556
472
718
399
299
186
487
329
675
350
671
542
141
669
341
587
283
317
45
465
601
314
196
565
517
622
203
363
573
622
669
301
241
718
331
556
308
671
444
555
262
608
627
453
627
306
465
384
555
555
187
519
481
649
666
340
439
392
554
378
499
574
220
522
223
394
502
527
301
579
340
476
340
341
196
550
230
343
159
618
456
634
704
432
572
554
94
518
317
116
186
231
316
398
355
223
314
319
593
602
205
526
487
220
331
222
456
521
277
213
533
177
205
109
375
343
712
361
608
388
604
311
253
299
517
232
571
164
195
241
215
436
549
150
349
607
641
538
262
52
608
238
146
304
568
109
666
704
620
146
530
317
145
605
680
431
109
666
535
196
413
587
404
182
646
242
386
379
666
590
133
459
446
299
603
554
535
319
673
150
630
465
555
654
465
554
595
104
465
341
312
182
259
323
380
355
223
389
311
38
545
470
144
642
655
514
645
436
384
800
286
136
456
718
448
376
394
587
521
220
196
708
436
394
152
341
517
189
453
476
145
509
112
145
538
309
133
512
677
223
459
586
104
396
555
594
249
241
530
581
505
514
627
675
379
677
396
207
411
692
517
779
222
400
518
404
423
379
465
488
223
514
171
311
163
774
679
180
481
437
392
476
576
44
379
481
240
440
671
222
465
231
491
481
205
311
481
186
444
417
571
455
587
217
708
432
404
195
398
282
573
53
673
639
669
307
637
660
382
299
288
398
497
198
364
379
625
677
375
646
352
394
311
568
574
708
456
646
106
262
406
671
246
114
258
499
431
601
465
624
184
637
150
603
568
301
282
423
456
625
376
683
505
182
400
465
693
60
604
264
406
456
172
555
267
143
527
513
315
522
773
673
603
404
543
400
608
555
581
98
205
520
194
583
363
199
575
350
164
463
172
340
483
481
392
774
458
399
445
159
301
458
553
552
368
538
637
96
194
382
287
500
595
465
465
308
293
313
465
675
308
356
291
637
458
109
114
404
279
164
150
417
167
608
138
465
331
400
581
459
608
288
774
538
560
571
82
562
300
317
718
196
673
299
158
222
646
716
646
608
769
205
